﻿2026-08-08T19:19:35.9132446Z ##[group]Run npm test
2026-08-08T19:19:35.9132939Z [36;1mnpm test[0m
2026-08-08T19:19:35.9192899Z shell: /usr/bin/bash -e {0}
2026-08-08T19:19:35.9193345Z ##[endgroup]
2026-08-08T19:19:36.0717618Z 
2026-08-08T19:19:36.0738307Z > jarvis-finance-dashboard-vue@0.0.0 test
2026-08-08T19:19:36.0740027Z > vitest run --environment jsdom
2026-08-08T19:19:36.0754892Z 
2026-08-08T19:19:36.9676539Z 
2026-08-08T19:19:36.9699216Z [1m[30m[46m RUN [49m[39m[22m [36mv4.1.6 [39m[90m/home/runner/work/FinanceManager/FinanceManager/frontend[39m
2026-08-08T19:19:36.9700410Z 
2026-08-08T19:19:43.8570573Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mrenders the canonical visual cockpit with reconciled KPIs, charts and drill-downs
2026-08-08T19:19:43.8588479Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:43.8648412Z   at <HouseholdTabs> 
2026-08-08T19:19:43.8667993Z   at <HouseholdOverviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:43.8687812Z   at <VTUROOT>
2026-08-08T19:19:43.8707706Z 
2026-08-08T19:19:44.3233400Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mexposes preset selection state and submits stable account IDs while displaying account names
2026-08-08T19:19:44.3258097Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:44.3259177Z   at <HouseholdTabs> 
2026-08-08T19:19:44.3286705Z   at <HouseholdOverviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:44.3299951Z   at <VTUROOT>
2026-08-08T19:19:44.3300610Z 
2026-08-08T19:19:44.7011454Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mcommits only the latest filter request when responses resolve out of order
2026-08-08T19:19:44.7038740Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:44.7039955Z   at <HouseholdTabs> 
2026-08-08T19:19:44.7055868Z   at <HouseholdOverviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:44.7057192Z   at <VTUROOT>
2026-08-08T19:19:44.7077435Z 
2026-08-08T19:19:45.0119763Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mrenders comparison none neutrally without fabricated KPI, category or chart deltas
2026-08-08T19:19:45.0175159Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:45.0177204Z   at <HouseholdTabs> 
2026-08-08T19:19:45.0197740Z   at <HouseholdOverviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:45.0207465Z   at <VTUROOT>
2026-08-08T19:19:45.0247321Z 
2026-08-08T19:19:45.0502063Z  [32m✓[39m src/components/performance/PortfolioPerformancePanel.test.ts [2m([22m[2m19 tests[22m[2m)[22m[33m 3796[2mms[22m[39m
2026-08-08T19:19:45.0548624Z      [33m[2m✓[22m[39m shows the five simple metrics and only one compact setup status [33m 581[2mms[22m[39m
2026-08-08T19:19:45.0568869Z      [33m[2m✓[22m[39m keeps setup collapsed and renders the True Wealth model as provisional without raw JSON [33m 318[2mms[22m[39m
2026-08-08T19:19:45.2207353Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mrenders account-filtered budget scope as unavailable without progress or status claims
2026-08-08T19:19:45.2228126Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:45.2247648Z   at <HouseholdTabs> 
2026-08-08T19:19:45.2267802Z   at <HouseholdOverviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:45.2268729Z   at <VTUROOT>
2026-08-08T19:19:45.2287610Z 
2026-08-08T19:19:45.3808307Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2muses truthful empty states and does not mount an empty category chart
2026-08-08T19:19:45.3825755Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:45.3867751Z   at <HouseholdTabs> 
2026-08-08T19:19:45.3868810Z   at <HouseholdOverviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:45.3907647Z   at <VTUROOT>
2026-08-08T19:19:45.3927407Z 
2026-08-08T19:19:45.5569776Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mpersists the shared period, comparison and account filters in the URL
2026-08-08T19:19:45.5648978Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:45.5657520Z   at <HouseholdTabs> 
2026-08-08T19:19:45.5727830Z   at <HouseholdOverviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:45.5767857Z   at <VTUROOT>
2026-08-08T19:19:45.5827298Z 
2026-08-08T19:19:45.7483766Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mtreats a direct explicit date range as custom instead of relabeling it as the current month
2026-08-08T19:19:45.7508328Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:45.7509456Z   at <HouseholdTabs> 
2026-08-08T19:19:45.7527833Z   at <HouseholdOverviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:45.7547552Z   at <VTUROOT>
2026-08-08T19:19:45.7567401Z 
2026-08-08T19:19:45.9119516Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mshows partial-data and forecast transparency without inventing a result
2026-08-08T19:19:45.9153995Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:45.9178539Z   at <HouseholdTabs> 
2026-08-08T19:19:45.9197795Z   at <HouseholdOverviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:45.9217807Z   at <VTUROOT>
2026-08-08T19:19:45.9237316Z 
2026-08-08T19:19:46.1579886Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2moffers all required transaction filters in a responsive card/list surface
2026-08-08T19:19:46.1678281Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:46.1717589Z   at <HouseholdTabs> 
2026-08-08T19:19:46.1737833Z   at <HouseholdTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:46.1757436Z   at <VTUROOT>
2026-08-08T19:19:46.1797254Z 
2026-08-08T19:19:46.3789665Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2minherits custom dates and all selected cockpit accounts in transaction drill-downs
2026-08-08T19:19:46.3808022Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:46.3827473Z   at <HouseholdTabs> 
2026-08-08T19:19:46.3828219Z   at <HouseholdTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:46.3847554Z   at <VTUROOT>
2026-08-08T19:19:46.3867225Z 
2026-08-08T19:19:46.5529199Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mrenders stored signed expenses with exactly one semantic minus
2026-08-08T19:19:46.5548229Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:46.5567552Z   at <HouseholdTabs> 
2026-08-08T19:19:46.5568403Z   at <HouseholdTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:46.5587550Z   at <VTUROOT>
2026-08-08T19:19:46.5607390Z 
2026-08-08T19:19:46.7014693Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mdistinguishes filtered transaction emptiness from API failures and global emptiness
2026-08-08T19:19:46.7038107Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:46.7057570Z   at <HouseholdTabs> 
2026-08-08T19:19:46.7058589Z   at <HouseholdTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:46.7073932Z   at <VTUROOT>
2026-08-08T19:19:46.7097319Z 
2026-08-08T19:19:46.9106176Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mdistinguishes filtered transaction emptiness from API failures and global emptiness
2026-08-08T19:19:46.9154352Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:46.9177624Z   at <HouseholdTabs> 
2026-08-08T19:19:46.9217730Z   at <HouseholdTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:46.9237564Z   at <VTUROOT>
2026-08-08T19:19:46.9257238Z 
2026-08-08T19:19:47.1159439Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2muses cursor pagination and keeps the true transaction totals visible
2026-08-08T19:19:47.1178046Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:47.1187841Z   at <HouseholdTabs> 
2026-08-08T19:19:47.1227981Z   at <HouseholdTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:47.1228727Z   at <VTUROOT>
2026-08-08T19:19:47.1257178Z 
2026-08-08T19:19:47.2978048Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mrestarts transaction pagination when the server rejects a stale snapshot cursor
2026-08-08T19:19:47.3008002Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:47.3020921Z   at <HouseholdTabs> 
2026-08-08T19:19:47.3065308Z   at <HouseholdTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:47.3088794Z   at <VTUROOT>
2026-08-08T19:19:47.3103137Z 
2026-08-08T19:19:47.4659772Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mdoes not rewrite the destination URL when a transaction request resolves after unmount
2026-08-08T19:19:47.4662150Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:47.4697393Z   at <HouseholdTabs> 
2026-08-08T19:19:47.4737202Z   at <HouseholdTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:47.4748457Z   at <VTUROOT>
2026-08-08T19:19:47.4790411Z 
2026-08-08T19:19:47.5719736Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mshows review success only for canonical zero and keeps filtered zero distinct
2026-08-08T19:19:47.5722003Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:47.5737573Z   at <HouseholdTabs> 
2026-08-08T19:19:47.5757713Z   at <HouseholdReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:47.5761915Z   at <VTUROOT>
2026-08-08T19:19:47.5762454Z 
2026-08-08T19:19:47.7725220Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mshows review success only for canonical zero and keeps filtered zero distinct
2026-08-08T19:19:47.7727471Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:47.7728188Z   at <HouseholdTabs> 
2026-08-08T19:19:47.7728746Z   at <HouseholdReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:47.7729326Z   at <VTUROOT>
2026-08-08T19:19:47.7729629Z 
2026-08-08T19:19:47.9013087Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mshows review success only for canonical zero and keeps filtered zero distinct
2026-08-08T19:19:47.9018135Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:47.9020610Z   at <HouseholdTabs> 
2026-08-08T19:19:47.9022323Z   at <HouseholdReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:47.9023969Z   at <VTUROOT>
2026-08-08T19:19:47.9025212Z 
2026-08-08T19:19:47.9807469Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2muses global review source facets and ignores responses from obsolete filters
2026-08-08T19:19:47.9817598Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:47.9818594Z   at <HouseholdTabs> 
2026-08-08T19:19:47.9819409Z   at <HouseholdReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:47.9820210Z   at <VTUROOT>
2026-08-08T19:19:47.9820623Z 
2026-08-08T19:19:48.1850253Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mrequests the server-side decision union and restarts a stale review cursor
2026-08-08T19:19:48.1898299Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:48.1907490Z   at <HouseholdTabs> 
2026-08-08T19:19:48.1947611Z   at <HouseholdReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:48.1957590Z   at <VTUROOT>
2026-08-08T19:19:48.1987311Z 
2026-08-08T19:19:48.3447707Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mhonors confirmability and offers only amount-compatible categories
2026-08-08T19:19:48.3468038Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:48.3469124Z   at <HouseholdTabs> 
2026-08-08T19:19:48.3470107Z   at <HouseholdReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:48.3470974Z   at <VTUROOT>
2026-08-08T19:19:48.3471465Z 
2026-08-08T19:19:48.5989517Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2muses the compact smart inbox and fingerprint-bound batch confirmation
2026-08-08T19:19:48.6008214Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:48.6027573Z   at <HouseholdTabs> 
2026-08-08T19:19:48.6028235Z   at <HouseholdReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:48.6067605Z   at <VTUROOT>
2026-08-08T19:19:48.6087388Z 
2026-08-08T19:19:48.8762054Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mnever submits selected rows hidden by the active tab or filters
2026-08-08T19:19:48.8778038Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:48.8893966Z   at <HouseholdTabs> 
2026-08-08T19:19:48.8902188Z   at <HouseholdReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:48.8917680Z   at <VTUROOT>
2026-08-08T19:19:48.8937207Z 
2026-08-08T19:19:49.0227716Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2muses the human-visible final preview for a single-row confirmation
2026-08-08T19:19:49.0258228Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:49.0288355Z   at <HouseholdTabs> 
2026-08-08T19:19:49.0317801Z   at <HouseholdReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:49.0357616Z   at <VTUROOT>
2026-08-08T19:19:49.0377727Z 
2026-08-08T19:19:49.2879796Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mchanges a normal review category inline and keeps details contextual and privacy-safe
2026-08-08T19:19:49.2882222Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:49.2897603Z   at <HouseholdTabs> 
2026-08-08T19:19:49.2937717Z   at <HouseholdReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:49.2977438Z   at <VTUROOT>
2026-08-08T19:19:49.3006077Z 
2026-08-08T19:19:49.6185417Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mbinds duplicate decisions to the loaded review snapshot and preview metadata
2026-08-08T19:19:49.6226254Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:49.6247473Z   at <HouseholdTabs> 
2026-08-08T19:19:49.6248081Z   at <HouseholdReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:49.6277683Z   at <VTUROOT>
2026-08-08T19:19:49.6319559Z 
2026-08-08T19:19:49.8309434Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mloads excluded duplicates through the audited reopen contract
2026-08-08T19:19:49.8328369Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:49.8347487Z   at <HouseholdTabs> 
2026-08-08T19:19:49.8368557Z   at <HouseholdReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:49.8369350Z   at <VTUROOT>
2026-08-08T19:19:49.8387257Z 
2026-08-08T19:19:50.0580700Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mreads CSV locally and sends the same input only for fingerprint-bound preview then confirm
2026-08-08T19:19:50.0583190Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:50.0607690Z   at <HouseholdTabs> 
2026-08-08T19:19:50.0617587Z   at <HouseholdImportsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:50.0627603Z   at <VTUROOT>
2026-08-08T19:19:50.0647585Z 
2026-08-08T19:19:50.2584362Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mcollects inline category drafts and confirms only the applied fingerprints
2026-08-08T19:19:50.2648328Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:50.2667696Z   at <HouseholdTabs> 
2026-08-08T19:19:50.2687639Z   at <HouseholdImportsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:50.2710140Z   at <VTUROOT>
2026-08-08T19:19:50.2727296Z 
2026-08-08T19:19:50.5602999Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mkeeps the applied preview and local draft when applying decisions fails
2026-08-08T19:19:50.5638235Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:50.5657571Z   at <HouseholdTabs> 
2026-08-08T19:19:50.5675904Z   at <HouseholdImportsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:50.5717658Z   at <VTUROOT>
2026-08-08T19:19:50.5742783Z 
2026-08-08T19:19:50.8549493Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mrenders explicit draft removals and omits removed applied decisions on Apply
2026-08-08T19:19:50.8568050Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:50.8627698Z   at <HouseholdTabs> 
2026-08-08T19:19:50.8667819Z   at <HouseholdImportsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:50.8707681Z   at <VTUROOT>
2026-08-08T19:19:50.8721731Z 
2026-08-08T19:19:51.2279594Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mbinds merchant-cluster decisions, row exclusions, unmatched-transfer decisions and business readiness
2026-08-08T19:19:51.2348684Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:51.2417801Z   at <HouseholdTabs> 
2026-08-08T19:19:51.2447669Z   at <HouseholdImportsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:51.2467503Z   at <VTUROOT>
2026-08-08T19:19:51.2487223Z 
2026-08-08T19:19:51.7801289Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mbuilds one fingerprint-bound request from four replaceable source files
2026-08-08T19:19:51.7847974Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:51.7867457Z   at <HouseholdTabs> 
2026-08-08T19:19:51.7897858Z   at <HouseholdImportsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:51.7957681Z   at <VTUROOT>
2026-08-08T19:19:51.7981028Z 
2026-08-08T19:19:52.0894352Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mkeeps proposals inspectable and returns excluded cluster outliers to the individual inbox
2026-08-08T19:19:52.0988987Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:52.1017627Z   at <HouseholdTabs> 
2026-08-08T19:19:52.1037896Z   at <HouseholdImportsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:52.1067585Z   at <VTUROOT>
2026-08-08T19:19:52.1081981Z 
2026-08-08T19:19:52.2454820Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mdiscards an in-flight preview response after its local input binding changes
2026-08-08T19:19:52.2498581Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:52.2499409Z   at <HouseholdTabs> 
2026-08-08T19:19:52.2558066Z   at <HouseholdImportsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:52.2572517Z   at <VTUROOT>
2026-08-08T19:19:52.2577629Z 
2026-08-08T19:19:52.3719716Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2minvalidates the old confirmable preview as soon as replacement file reading starts
2026-08-08T19:19:52.3740713Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:52.3744026Z   at <HouseholdTabs> 
2026-08-08T19:19:52.3745067Z   at <HouseholdImportsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:52.3745897Z   at <VTUROOT>
2026-08-08T19:19:52.3746410Z 
2026-08-08T19:19:52.5669530Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mkeeps a failed replacement empty and enforces the aggregate request limit
2026-08-08T19:19:52.5671816Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:52.5687785Z   at <HouseholdTabs> 
2026-08-08T19:19:52.5707780Z   at <HouseholdImportsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:52.5727528Z   at <VTUROOT>
2026-08-08T19:19:52.5747210Z 
2026-08-08T19:19:52.7448883Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mresets decision pagination after applying a bound category draft
2026-08-08T19:19:52.7468308Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:52.7487590Z   at <HouseholdTabs> 
2026-08-08T19:19:52.7488266Z   at <HouseholdImportsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:52.7507536Z   at <VTUROOT>
2026-08-08T19:19:52.7527322Z 
2026-08-08T19:19:53.0212717Z [90mstderr[2m | src/pages/HouseholdUx.test.ts[2m > [22m[2mSprint 15 household UX[2m > [22m[2mdiscards a stale file-reader completion after a newer replacement wins
2026-08-08T19:19:53.0215446Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:53.0263600Z   at <HouseholdTabs> 
2026-08-08T19:19:53.0308004Z   at <HouseholdImportsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:53.0308988Z   at <VTUROOT>
2026-08-08T19:19:53.0367546Z 
2026-08-08T19:19:53.0603424Z  [32m✓[39m src/pages/HouseholdUx.test.ts [2m([22m[2m39 tests[22m[2m)[22m[33m 9836[2mms[22m[39m
2026-08-08T19:19:53.0628865Z      [33m[2m✓[22m[39m renders the canonical visual cockpit with reconciled KPIs, charts and drill-downs [33m 867[2mms[22m[39m
2026-08-08T19:19:53.0658786Z      [33m[2m✓[22m[39m exposes preset selection state and submits stable account IDs while displaying account names [33m 385[2mms[22m[39m
2026-08-08T19:19:53.0677529Z      [33m[2m✓[22m[39m commits only the latest filter request when responses resolve out of order [33m 322[2mms[22m[39m
2026-08-08T19:19:53.0738885Z      [33m[2m✓[22m[39m distinguishes filtered transaction emptiness from API failures and global emptiness [33m 387[2mms[22m[39m
2026-08-08T19:19:53.0778759Z      [33m[2m✓[22m[39m shows review success only for canonical zero and keeps filtered zero distinct [33m 418[2mms[22m[39m
2026-08-08T19:19:53.0828961Z      [33m[2m✓[22m[39m uses the compact smart inbox and fingerprint-bound batch confirmation [33m 374[2mms[22m[39m
2026-08-08T19:19:53.0879575Z      [33m[2m✓[22m[39m changes a normal review category inline and keeps details contextual and privacy-safe [33m 332[2mms[22m[39m
2026-08-08T19:19:53.0930274Z      [33m[2m✓[22m[39m keeps the applied preview and local draft when applying decisions fails [33m 325[2mms[22m[39m
2026-08-08T19:19:53.0959168Z      [33m[2m✓[22m[39m renders explicit draft removals and omits removed applied decisions on Apply [33m 333[2mms[22m[39m
2026-08-08T19:19:53.1028975Z      [33m[2m✓[22m[39m binds merchant-cluster decisions, row exclusions, unmatched-transfer decisions and business readiness [33m 565[2mms[22m[39m
2026-08-08T19:19:53.1068722Z      [33m[2m✓[22m[39m builds one fingerprint-bound request from four replaceable source files [33m 311[2mms[22m[39m
2026-08-08T19:19:53.2409378Z [90mstderr[2m | src/pages/BudgetUxV2.test.ts[2m > [22m[2mBudget UX v2[2m > [22m[2mshows simplified category buckets and merge preview section
2026-08-08T19:19:53.2468467Z [22m[39m[Vue warn]: Failed to resolve component: RouterLink
2026-08-08T19:19:53.2508578Z If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. 
2026-08-08T19:19:53.2527655Z   at <HouseholdTabs> 
2026-08-08T19:19:53.2547760Z   at <BudgetCategoriesPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:53.2587649Z   at <VTUROOT>
2026-08-08T19:19:53.2607435Z 
2026-08-08T19:19:53.3783428Z  [32m✓[39m src/pages/BudgetUxV2.test.ts [2m([22m[2m10 tests[22m[2m)[22m[33m 5024[2mms[22m[39m
2026-08-08T19:19:53.3785910Z      [33m[2m✓[22m[39m shows the four Finance areas without duplicate household deep links [33m 327[2mms[22m[39m
2026-08-08T19:19:53.3813835Z      [33m[2m✓[22m[39m opens confirmed expenses only through the safe transaction-token drawer [33m 1114[2mms[22m[39m
2026-08-08T19:19:53.3878644Z      [33m[2m✓[22m[39m shows review candidates without technical user-mode fields [33m 1072[2mms[22m[39m
2026-08-08T19:19:53.3928613Z      [33m[2m✓[22m[39m uses ConfirmDialog and success Toast for risky review confirm actions [33m 916[2mms[22m[39m
2026-08-08T19:19:53.3983672Z      [33m[2m✓[22m[39m renders category analysis and links category drilldown to data explorer [33m 589[2mms[22m[39m
2026-08-08T19:19:53.4029156Z      [33m[2m✓[22m[39m keeps budget vs actual separated from import review and based on budget status rows [33m 371[2mms[22m[39m
2026-08-08T19:19:56.5029578Z [90mstderr[2m | src/pages/BudgetPhase1.test.ts[2m > [22m[2mBudget Phase 1 Vue UI[2m > [22m[2mrenders Budget Overview with current month KPIs and latest transactions
2026-08-08T19:19:56.5031656Z [22m[39m[Vue warn]: Failed to resolve component: RouterLink
2026-08-08T19:19:56.5048413Z If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. 
2026-08-08T19:19:56.5077844Z   at <BudgetOverviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:56.5097481Z   at <VTUROOT>
2026-08-08T19:19:56.5097984Z 
2026-08-08T19:19:56.6072268Z [90mstderr[2m | src/pages/BudgetPhase1.test.ts[2m > [22m[2mBudget Phase 1 Vue UI[2m > [22m[2mrenders Budget Overview with current month KPIs and latest transactions
2026-08-08T19:19:56.6074429Z [22m[39m[Vue warn]: Failed to resolve component: RouterLink
2026-08-08T19:19:56.6098392Z If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. 
2026-08-08T19:19:56.6107780Z   at <BudgetOverviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:56.6117618Z   at <VTUROOT>
2026-08-08T19:19:56.6117925Z 
2026-08-08T19:19:57.5262526Z  [32m✓[39m src/pages/CryptoPage.test.ts [2m([22m[2m4 tests[22m[2m)[22m[33m 1207[2mms[22m[39m
2026-08-08T19:19:57.5318682Z      [33m[2m✓[22m[39m auto-loads crypto positions and opens detail drawer from a row click [33m 502[2mms[22m[39m
2026-08-08T19:19:57.5340708Z      [33m[2m✓[22m[39m renders compact sorted allocations, hides weak sparkline history, and opens wallet detail from coin detail [33m 331[2mms[22m[39m
2026-08-08T19:19:57.5441826Z [90mstderr[2m | src/pages/BudgetPhase1.test.ts[2m > [22m[2mBudget Phase 1 Vue UI[2m > [22m[2mrenders transactions workflow and confirms via API after preview summary
2026-08-08T19:19:57.5488433Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:57.5489855Z   at <BudgetTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:57.5531826Z   at <VTUROOT>
2026-08-08T19:19:57.5534540Z [Vue warn]: injection "Symbol(router)" not found. 
2026-08-08T19:19:57.5558167Z   at <BudgetTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:57.5587782Z   at <VTUROOT>
2026-08-08T19:19:57.5627841Z [Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:57.5668135Z   at <BudgetTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:57.5677404Z   at <VTUROOT>
2026-08-08T19:19:57.5707489Z 
2026-08-08T19:19:57.9319756Z [90mstderr[2m | src/pages/BudgetPhase1.test.ts[2m > [22m[2mBudget Phase 1 Vue UI[2m > [22m[2msupports category preview confirm workflows without exposing raw IDs
2026-08-08T19:19:57.9328939Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:57.9377600Z   at <HouseholdTabs> 
2026-08-08T19:19:57.9397785Z   at <BudgetCategoriesPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:57.9437593Z   at <VTUROOT>
2026-08-08T19:19:57.9477726Z [Vue warn]: Failed to resolve component: RouterLink
2026-08-08T19:19:57.9538490Z If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. 
2026-08-08T19:19:57.9556353Z   at <HouseholdTabs> 
2026-08-08T19:19:57.9557671Z   at <BudgetCategoriesPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:57.9582365Z   at <VTUROOT>
2026-08-08T19:19:57.9582881Z 
2026-08-08T19:19:58.0719955Z [90mstderr[2m | src/pages/BudgetPhase1.test.ts[2m > [22m[2mBudget Phase 1 Vue UI[2m > [22m[2mopens the zero-based category chart and month drilldown with a household transaction list
2026-08-08T19:19:58.0722091Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:58.0745559Z   at <HouseholdTabs> 
2026-08-08T19:19:58.0767816Z   at <BudgetStatusPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:58.0768694Z   at <VTUROOT>
2026-08-08T19:19:58.0807354Z 
2026-08-08T19:19:58.1807915Z [90mstderr[2m | src/pages/BudgetPhase1.test.ts[2m > [22m[2mBudget Phase 1 Vue UI[2m > [22m[2mkeeps zero months at zero and omits the budget line when a category is not budgeted
2026-08-08T19:19:58.1828146Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:19:58.1829290Z   at <HouseholdTabs> 
2026-08-08T19:19:58.1847822Z   at <BudgetStatusPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:58.1867607Z   at <VTUROOT>
2026-08-08T19:19:58.1887821Z [Vue warn]: Failed to resolve component: RouterLink
2026-08-08T19:19:58.1908232Z If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. 
2026-08-08T19:19:58.1909391Z   at <HouseholdTabs> 
2026-08-08T19:19:58.1926282Z   at <BudgetStatusPage ref="VTU_COMPONENT" > 
2026-08-08T19:19:58.1967617Z   at <VTUROOT>
2026-08-08T19:19:58.1971904Z 
2026-08-08T19:19:58.2082250Z  [32m✓[39m src/pages/BudgetPhase1.test.ts [2m([22m[2m6 tests[22m[2m)[22m[33m 2565[2mms[22m[39m
2026-08-08T19:19:58.2129054Z      [33m[2m✓[22m[39m keeps Budget inside the consolidated Household navigation instead of a duplicate sidebar entry [33m 319[2mms[22m[39m
2026-08-08T19:19:58.2168563Z      [33m[2m✓[22m[39m renders Budget Overview with current month KPIs and latest transactions [33m 935[2mms[22m[39m
2026-08-08T19:19:58.2198573Z      [33m[2m✓[22m[39m renders transactions workflow and confirms via API after preview summary [33m 936[2mms[22m[39m
2026-08-08T19:20:00.7429215Z  [32m✓[39m src/components/portfolio-data/DataIngestionReconciliationPanel.test.ts [2m([22m[2m4 tests[22m[2m)[22m[33m 900[2mms[22m[39m
2026-08-08T19:20:00.7503844Z      [33m[2m✓[22m[39m separates missing data, mismatches and total-value accounts without invented holdings [33m 349[2mms[22m[39m
2026-08-08T19:20:01.3689928Z [90mstderr[2m | src/pages/BudgetAnalyticsDashboardV2.test.ts[2m > [22m[2mBudget Analytics & Dashboard v2[2m > [22m[2mrenders Budget Übersicht as monthly cockpit, not category status table
2026-08-08T19:20:01.3697924Z [22m[39m[Vue warn]: Failed to resolve component: RouterLink
2026-08-08T19:20:01.3728389Z If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. 
2026-08-08T19:20:01.3752866Z   at <BudgetOverviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:01.3777542Z   at <VTUROOT>
2026-08-08T19:20:01.3778049Z 
2026-08-08T19:20:01.4803258Z [90mstderr[2m | src/pages/BudgetAnalyticsDashboardV2.test.ts[2m > [22m[2mBudget Analytics & Dashboard v2[2m > [22m[2mrenders Budget Übersicht as monthly cockpit, not category status table
2026-08-08T19:20:01.4817983Z [22m[39m[Vue warn]: Failed to resolve component: RouterLink
2026-08-08T19:20:01.4838352Z If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. 
2026-08-08T19:20:01.4839616Z   at <BudgetOverviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:01.4857493Z   at <VTUROOT>
2026-08-08T19:20:01.4857781Z 
2026-08-08T19:20:02.2340031Z [90mstderr[2m | src/pages/BudgetAnalyticsDashboardV2.test.ts[2m > [22m[2mBudget Analytics & Dashboard v2[2m > [22m[2mshows financial quality warnings instead of presenting partial zeroes as complete
2026-08-08T19:20:02.2421091Z [22m[39m[Vue warn]: Failed to resolve component: RouterLink
2026-08-08T19:20:02.2468498Z If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. 
2026-08-08T19:20:02.2517879Z   at <BudgetOverviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:02.2567849Z   at <VTUROOT>
2026-08-08T19:20:02.2617318Z 
2026-08-08T19:20:02.3328417Z [90mstderr[2m | src/pages/BudgetAnalyticsDashboardV2.test.ts[2m > [22m[2mBudget Analytics & Dashboard v2[2m > [22m[2mshows financial quality warnings instead of presenting partial zeroes as complete
2026-08-08T19:20:02.3347925Z [22m[39m[Vue warn]: Failed to resolve component: RouterLink
2026-08-08T19:20:02.3368434Z If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. 
2026-08-08T19:20:02.3397699Z   at <BudgetOverviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:02.3408209Z   at <VTUROOT>
2026-08-08T19:20:02.3427680Z [Vue warn]: Failed to resolve component: RouterLink
2026-08-08T19:20:02.3448184Z If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. 
2026-08-08T19:20:02.3526391Z   at <BudgetOverviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:02.3561463Z   at <VTUROOT>
2026-08-08T19:20:02.3587369Z 
2026-08-08T19:20:02.3649542Z [90mstderr[2m | src/pages/BudgetAnalyticsDashboardV2.test.ts[2m > [22m[2mBudget Analytics & Dashboard v2[2m > [22m[2mshows financial quality warnings instead of presenting partial zeroes as complete
2026-08-08T19:20:02.3655243Z [22m[39mFailed to create chart: can't acquire context from the given item
2026-08-08T19:20:02.3692041Z 
2026-08-08T19:20:02.9349919Z [90mstderr[2m | src/pages/BudgetAnalyticsDashboardV2.test.ts[2m > [22m[2mBudget Analytics & Dashboard v2[2m > [22m[2mshows financial quality warnings instead of presenting partial zeroes as complete
2026-08-08T19:20:02.9378914Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:02.9467852Z   at <HouseholdTabs> 
2026-08-08T19:20:02.9494803Z   at <BudgetStatusPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:02.9547713Z   at <VTUROOT>
2026-08-08T19:20:02.9565849Z [Vue warn]: Failed to resolve component: RouterLink
2026-08-08T19:20:02.9604194Z If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. 
2026-08-08T19:20:02.9677727Z   at <HouseholdTabs> 
2026-08-08T19:20:02.9697942Z   at <BudgetStatusPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:02.9737694Z   at <VTUROOT>
2026-08-08T19:20:02.9757504Z 
2026-08-08T19:20:03.1290233Z [90mstderr[2m | src/pages/BudgetAnalyticsDashboardV2.test.ts[2m > [22m[2mBudget Analytics & Dashboard v2[2m > [22m[2mrenders Budgetstatus as operational category control with row-click monthly chart
2026-08-08T19:20:03.1316070Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:03.1317392Z   at <HouseholdTabs> 
2026-08-08T19:20:03.1357784Z   at <BudgetStatusPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:03.1358664Z   at <VTUROOT>
2026-08-08T19:20:03.1377675Z [Vue warn]: Failed to resolve component: RouterLink
2026-08-08T19:20:03.1379164Z If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. 
2026-08-08T19:20:03.1380249Z   at <HouseholdTabs> 
2026-08-08T19:20:03.1380804Z   at <BudgetStatusPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:03.1381379Z   at <VTUROOT>
2026-08-08T19:20:03.1381605Z 
2026-08-08T19:20:03.6826022Z  [32m✓[39m src/pages/BudgetAnalyticsDashboardV2.test.ts [2m([22m[2m4 tests[22m[2m)[22m[33m 2998[2mms[22m[39m
2026-08-08T19:20:03.6849180Z      [33m[2m✓[22m[39m renders Budget Übersicht as monthly cockpit, not category status table [33m 1086[2mms[22m[39m
2026-08-08T19:20:03.6888885Z      [33m[2m✓[22m[39m shows financial quality warnings instead of presenting partial zeroes as complete [33m 1283[2mms[22m[39m
2026-08-08T19:20:03.6891938Z      [33m[2m✓[22m[39m renders Budget vs Ist as analysis page with distinct charts and top deviations [33m 490[2mms[22m[39m
2026-08-08T19:20:04.8913556Z  [32m✓[39m src/pages/VueCockpitV11.test.ts [2m([22m[2m6 tests[22m[2m)[22m[33m 1255[2mms[22m[39m
2026-08-08T19:20:04.8945879Z      [33m[2m✓[22m[39m supports equity search, visible Zusammenfassung prüfen review and final confirm [33m 327[2mms[22m[39m
2026-08-08T19:20:04.8968703Z      [33m[2m✓[22m[39m opens equity detail drawer with explicit market-data controls and no unfinished trading actions [33m 467[2mms[22m[39m
2026-08-08T19:20:07.8372837Z [90mstderr[2m | src/pages/BudgetImportProductionV2.test.ts[2m > [22m[2mBudget Import Production v2 review UI[2m > [22m[2mshows source-aware review tabs and candidate type actions
2026-08-08T19:20:07.8378212Z [22m[39m[Vue warn]: injection "Symbol(router)" not found. 
2026-08-08T19:20:07.8397893Z   at <BudgetImportReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:07.8417596Z   at <VTUROOT>
2026-08-08T19:20:07.8432712Z [Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:07.8507315Z   at <BudgetImportReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:07.8529087Z   at <VTUROOT>
2026-08-08T19:20:07.8547269Z 
2026-08-08T19:20:08.5389530Z  [32m✓[39m src/pages/PortfolioPage.test.ts [2m([22m[2m4 tests[22m[2m)[22m[33m 933[2mms[22m[39m
2026-08-08T19:20:08.5419044Z      [33m[2m✓[22m[39m shows six understandable metrics, separated flows, distribution, policy and planning without trading UI [33m 440[2mms[22m[39m
2026-08-08T19:20:09.1881088Z [90mstderr[2m | src/pages/BudgetImportProductionV2.test.ts[2m > [22m[2mBudget Import Production v2 review UI[2m > [22m[2mmarks a candidate as credit card payment through audited type action
2026-08-08T19:20:09.1898306Z [22m[39m[Vue warn]: injection "Symbol(router)" not found. 
2026-08-08T19:20:09.1917837Z   at <BudgetImportReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:09.1937674Z   at <VTUROOT>
2026-08-08T19:20:09.1938792Z [Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:09.1957834Z   at <BudgetImportReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:09.1977576Z   at <VTUROOT>
2026-08-08T19:20:09.1997235Z 
2026-08-08T19:20:10.2908183Z [90mstderr[2m | src/pages/BudgetImportProductionV2.test.ts[2m > [22m[2mBudget Import Production v2 review UI[2m > [22m[2mshows bulk toolbar state, applies category to selected candidates, and keeps partial feedback visible
2026-08-08T19:20:10.2919532Z [22m[39m[Vue warn]: injection "Symbol(router)" not found. 
2026-08-08T19:20:10.2937852Z   at <BudgetImportReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:10.2957597Z   at <VTUROOT>
2026-08-08T19:20:10.2977822Z [Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:10.2978867Z   at <BudgetImportReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:10.2997615Z   at <VTUROOT>
2026-08-08T19:20:10.3017446Z 
2026-08-08T19:20:11.6180343Z [90mstderr[2m | src/pages/BudgetImportProductionV2.test.ts[2m > [22m[2mBudget Import Production v2 review UI[2m > [22m[2mopens bulk confirm preview dialog and disables final confirm when blockers exist
2026-08-08T19:20:11.6198038Z [22m[39m[Vue warn]: injection "Symbol(router)" not found. 
2026-08-08T19:20:11.6217685Z   at <BudgetImportReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:11.6223973Z   at <VTUROOT>
2026-08-08T19:20:11.6246786Z [Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:11.6264542Z   at <BudgetImportReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:11.6267525Z   at <VTUROOT>
2026-08-08T19:20:11.6295400Z 
2026-08-08T19:20:12.3355583Z  [32m✓[39m src/pages/BudgetIncomePage.test.ts [2m([22m[2m6 tests[22m[2m)[22m[33m 1418[2mms[22m[39m
2026-08-08T19:20:12.3368367Z      [33m[2m✓[22m[39m shows tabs, household summary, empty editable ERNE template and mobile cards [33m 394[2mms[22m[39m
2026-08-08T19:20:12.7885444Z [90mstderr[2m | src/pages/BudgetImportProductionV2.test.ts[2m > [22m[2mBudget Import Production v2 review UI[2m > [22m[2mkeeps duplicate candidates out of normal confirm actions and shows duplicate review actions only
2026-08-08T19:20:12.7898154Z [22m[39m[Vue warn]: injection "Symbol(router)" not found. 
2026-08-08T19:20:12.7961384Z   at <BudgetImportReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:12.7967932Z   at <VTUROOT>
2026-08-08T19:20:12.8028050Z [Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:12.8067766Z   at <BudgetImportReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:12.8068665Z   at <VTUROOT>
2026-08-08T19:20:12.8107252Z 
2026-08-08T19:20:13.9029821Z [90mstderr[2m | src/pages/BudgetImportProductionV2.test.ts[2m > [22m[2mBudget Import Production v2 review UI[2m > [22m[2mrequires a reason and calls the duplicate override endpoint explicitly
2026-08-08T19:20:13.9038548Z [22m[39m[Vue warn]: injection "Symbol(router)" not found. 
2026-08-08T19:20:13.9057825Z   at <BudgetImportReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:13.9058489Z   at <VTUROOT>
2026-08-08T19:20:13.9059133Z [Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:13.9059942Z   at <BudgetImportReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:13.9060536Z   at <VTUROOT>
2026-08-08T19:20:13.9060773Z 
2026-08-08T19:20:15.4370651Z  [32m✓[39m src/pages/PositionAddPage.test.ts [2m([22m[2m5 tests[22m[2m)[22m[33m 1010[2mms[22m[39m
2026-08-08T19:20:15.4438817Z      [33m[2m✓[22m[39m renders a clear seven-step PrimeVue-style wizard shell before provider actions [33m 414[2mms[22m[39m
2026-08-08T19:20:15.5169797Z [90mstderr[2m | src/pages/BudgetImportProductionV2.test.ts[2m > [22m[2mBudget Import Production v2 review UI[2m > [22m[2mrenders both sides as one transfer pair and confirms only the pair contract
2026-08-08T19:20:15.5188234Z [22m[39m[Vue warn]: injection "Symbol(router)" not found. 
2026-08-08T19:20:15.5198042Z   at <BudgetImportReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:15.5207723Z   at <VTUROOT>
2026-08-08T19:20:15.5228051Z [Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:15.5247858Z   at <BudgetImportReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:15.5267704Z   at <VTUROOT>
2026-08-08T19:20:15.5268285Z 
2026-08-08T19:20:16.0747992Z  [32m✓[39m src/pages/BudgetImportProductionV2.test.ts [2m([22m[2m7 tests[22m[2m)[22m[33m 9767[2mms[22m[39m
2026-08-08T19:20:16.0794443Z      [33m[2m✓[22m[39m shows source-aware review tabs and candidate type actions [33m 1950[2mms[22m[39m
2026-08-08T19:20:16.0808561Z      [33m[2m✓[22m[39m marks a candidate as credit card payment through audited type action [33m 1296[2mms[22m[39m
2026-08-08T19:20:16.0828683Z      [33m[2m✓[22m[39m shows bulk toolbar state, applies category to selected candidates, and keeps partial feedback visible [33m 1356[2mms[22m[39m
2026-08-08T19:20:16.0848291Z      [33m[2m✓[22m[39m opens bulk confirm preview dialog and disables final confirm when blockers exist [33m 1270[2mms[22m[39m
2026-08-08T19:20:16.0850481Z      [33m[2m✓[22m[39m keeps duplicate candidates out of normal confirm actions and shows duplicate review actions only [33m 1106[2mms[22m[39m
2026-08-08T19:20:16.0868346Z      [33m[2m✓[22m[39m requires a reason and calls the duplicate override endpoint explicitly [33m 1545[2mms[22m[39m
2026-08-08T19:20:16.0885505Z      [33m[2m✓[22m[39m renders both sides as one transfer pair and confirms only the pair contract [33m 1240[2mms[22m[39m
2026-08-08T19:20:18.6893322Z  [32m✓[39m src/pages/BudgetPlanningPage.test.ts [2m([22m[2m5 tests[22m[2m)[22m[33m 1035[2mms[22m[39m
2026-08-08T19:20:18.6958490Z      [33m[2m✓[22m[39m uses 2025 by default and distinguishes missing from confirmed zero [33m 473[2mms[22m[39m
2026-08-08T19:20:19.1813561Z  [32m✓[39m src/components/policy/PortfolioPolicyManager.test.ts [2m([22m[2m5 tests[22m[2m)[22m[33m 904[2mms[22m[39m
2026-08-08T19:20:19.1838352Z      [33m[2m✓[22m[39m forwards preview identifiers and the displayed payload unchanged [33m 384[2mms[22m[39m
2026-08-08T19:20:21.8260975Z  [32m✓[39m src/pages/CashTrueWealthManagement.test.ts [2m([22m[2m3 tests[22m[2m)[22m[33m 807[2mms[22m[39m
2026-08-08T19:20:21.8264123Z      [33m[2m✓[22m[39m shows cash summary columns balance mode manual calculated used difference and history without raw ids [33m 452[2mms[22m[39m
2026-08-08T19:20:22.6397512Z [90mstderr[2m | src/pages/MobileUx.test.ts[2m > [22m[2mVue mobile UX v1[2m > [22m[2muses mobile-safe layout shell padding and bottom nav space
2026-08-08T19:20:22.6418499Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:22.6437823Z   at <AppLayout ref="VTU_COMPONENT" > 
2026-08-08T19:20:22.6457510Z   at <VTUROOT>
2026-08-08T19:20:22.6477217Z 
2026-08-08T19:20:22.7809452Z [90mstderr[2m | src/pages/MobileUx.test.ts[2m > [22m[2mVue mobile UX v1[2m > [22m[2mrenders Budgetstatus mobile cards without long decimals or technical IDs
2026-08-08T19:20:22.7847955Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:22.7877817Z   at <HouseholdTabs> 
2026-08-08T19:20:22.7897639Z   at <BudgetStatusPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:22.7917310Z   at <VTUROOT>
2026-08-08T19:20:22.7917939Z [Vue warn]: Failed to resolve component: RouterLink
2026-08-08T19:20:22.7938097Z If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. 
2026-08-08T19:20:22.7947490Z   at <HouseholdTabs> 
2026-08-08T19:20:22.7977563Z   at <BudgetStatusPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:22.7997470Z   at <VTUROOT>
2026-08-08T19:20:22.8027215Z 
2026-08-08T19:20:23.4900888Z [90mstderr[2m | src/pages/MobileUx.test.ts[2m > [22m[2mVue mobile UX v1[2m > [22m[2mrenders mobile expense cards and non-clickable coming-soon receipt hints
2026-08-08T19:20:23.4918174Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:23.4937625Z   at <BudgetTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:23.4966698Z   at <VTUROOT>
2026-08-08T19:20:23.4997650Z [Vue warn]: injection "Symbol(router)" not found. 
2026-08-08T19:20:23.4998884Z   at <BudgetTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:23.5017491Z   at <VTUROOT>
2026-08-08T19:20:23.5047730Z [Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:23.5048588Z   at <BudgetTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:23.5067446Z   at <VTUROOT>
2026-08-08T19:20:23.5127362Z 
2026-08-08T19:20:23.9246338Z  [32m✓[39m src/pages/MobileUx.test.ts [2m([22m[2m5 tests[22m[2m)[22m[33m 1837[2mms[22m[39m
2026-08-08T19:20:23.9269675Z      [33m[2m✓[22m[39m uses mobile-safe layout shell padding and bottom nav space [33m 345[2mms[22m[39m
2026-08-08T19:20:23.9328406Z      [33m[2m✓[22m[39m renders mobile expense cards and non-clickable coming-soon receipt hints [33m 865[2mms[22m[39m
2026-08-08T19:20:25.8302082Z  [32m✓[39m src/pages/EquitySprint11.test.ts [2m([22m[2m4 tests[22m[2m)[22m[33m 1511[2mms[22m[39m
2026-08-08T19:20:25.8368780Z      [33m[2m✓[22m[39m shows all 22 positions, honest partial value and all 14 missing rows without provider calls on render [33m 588[2mms[22m[39m
2026-08-08T19:20:25.8388720Z      [33m[2m✓[22m[39m separates view reload, full-refresh dry-run, bound apply and per-position refresh dates [33m 547[2mms[22m[39m
2026-08-08T19:20:27.0668689Z  [32m✓[39m src/pages/BudgetGroceryOptimizerPage.test.ts [2m([22m[2m3 tests[22m[2m)[22m[33m 661[2mms[22m[39m
2026-08-08T19:20:27.0718875Z      [33m[2m✓[22m[39m renders receipt selection product rows optimization and runtime report without medical claims [33m 320[2mms[22m[39m
2026-08-08T19:20:28.8840637Z  [32m✓[39m src/pages/ReadOnlySurfaces.test.ts [2m([22m[2m4 tests[22m[2m)[22m[33m 845[2mms[22m[39m
2026-08-08T19:20:28.8858665Z      [33m[2m✓[22m[39m Portfolio page auto-loads the read-only wealth cockpit without trading surfaces [33m 351[2mms[22m[39m
2026-08-08T19:20:30.6950138Z [90mstderr[2m | src/pages/BudgetWorkflowHelpUx.test.ts[2m > [22m[2mBudget Workflow Clarification & Help UX[2m > [22m[2mrenders effective expenses with Geldfluss columns and confirmed-only empty state text
2026-08-08T19:20:30.6957869Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:30.6997838Z   at <BudgetTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:30.7005656Z   at <VTUROOT>
2026-08-08T19:20:30.7031501Z [Vue warn]: injection "Symbol(router)" not found. 
2026-08-08T19:20:30.7047686Z   at <BudgetTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:30.7067517Z   at <VTUROOT>
2026-08-08T19:20:30.7077783Z [Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:30.7097726Z   at <BudgetTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:30.7107577Z   at <VTUROOT>
2026-08-08T19:20:30.7147222Z 
2026-08-08T19:20:31.3449240Z  [32m✓[39m src/api/household.test.ts [2m([22m[2m4 tests[22m[2m)[22m[32m 17[2mms[22m[39m
2026-08-08T19:20:31.4745108Z [90mstderr[2m | src/pages/BudgetWorkflowHelpUx.test.ts[2m > [22m[2mBudget Workflow Clarification & Help UX[2m > [22m[2mrenders effective expenses with Geldfluss columns and confirmed-only empty state text
2026-08-08T19:20:31.4758304Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:31.4777795Z   at <BudgetTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:31.4778847Z   at <VTUROOT>
2026-08-08T19:20:31.4797797Z [Vue warn]: injection "Symbol(router)" not found. 
2026-08-08T19:20:31.4817689Z   at <BudgetTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:31.4837533Z   at <VTUROOT>
2026-08-08T19:20:31.4838463Z [Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:31.4858077Z   at <BudgetTransactionsPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:31.4877517Z   at <VTUROOT>
2026-08-08T19:20:31.4897294Z 
2026-08-08T19:20:32.4190530Z [90mstderr[2m | src/pages/BudgetWorkflowHelpUx.test.ts[2m > [22m[2mBudget Workflow Clarification & Help UX[2m > [22m[2mrenders transfer review explanations including True Wealth target and non-budget effect
2026-08-08T19:20:32.4218284Z [22m[39m[Vue warn]: injection "Symbol(router)" not found. 
2026-08-08T19:20:32.4219869Z   at <BudgetImportReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:32.4237667Z   at <VTUROOT>
2026-08-08T19:20:32.4257817Z [Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:32.4277783Z   at <BudgetImportReviewPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:32.4278712Z   at <VTUROOT>
2026-08-08T19:20:32.4297395Z 
2026-08-08T19:20:32.9879891Z [90mstderr[2m | src/pages/BudgetWorkflowHelpUx.test.ts[2m > [22m[2mBudget Workflow Clarification & Help UX[2m > [22m[2mrenders transfer list with from/to accounts
2026-08-08T19:20:32.9928256Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:32.9929062Z   at <HouseholdTabs> 
2026-08-08T19:20:32.9929618Z   at <BudgetTransfersPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:32.9930194Z   at <VTUROOT>
2026-08-08T19:20:32.9930790Z [Vue warn]: Failed to resolve component: RouterLink
2026-08-08T19:20:32.9932168Z If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. 
2026-08-08T19:20:32.9933246Z   at <HouseholdTabs> 
2026-08-08T19:20:32.9933797Z   at <BudgetTransfersPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:32.9934373Z   at <VTUROOT>
2026-08-08T19:20:32.9934591Z 
2026-08-08T19:20:33.2022768Z [90mstderr[2m | src/pages/BudgetWorkflowHelpUx.test.ts[2m > [22m[2mBudget Workflow Clarification & Help UX[2m > [22m[2mcentral help text covers purpose actions exclusions and opens from app shell
2026-08-08T19:20:33.2087908Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:33.2132965Z   at <AppLayout ref="VTU_COMPONENT" > 
2026-08-08T19:20:33.2133554Z   at <VTUROOT>
2026-08-08T19:20:33.2155421Z 
2026-08-08T19:20:33.2929121Z  [32m✓[39m src/pages/BudgetWorkflowHelpUx.test.ts [2m([22m[2m5 tests[22m[2m)[22m[33m 3734[2mms[22m[39m
2026-08-08T19:20:33.2968658Z      [33m[2m✓[22m[39m renders effective expenses with Geldfluss columns and confirmed-only empty state text [33m 1795[2mms[22m[39m
2026-08-08T19:20:33.3008676Z      [33m[2m✓[22m[39m renders transfer review explanations including True Wealth target and non-budget effect [33m 1023[2mms[22m[39m
2026-08-08T19:20:33.3063874Z      [33m[2m✓[22m[39m renders transfer list with from/to accounts [33m 439[2mms[22m[39m
2026-08-08T19:20:34.3238725Z  [32m✓[39m src/pages/EquityPageHotfix.test.ts [2m([22m[2m3 tests[22m[2m)[22m[33m 692[2mms[22m[39m
2026-08-08T19:20:34.3242779Z      [33m[2m✓[22m[39m shows separate single equity, TrueWealth and Cash sections without mixing TrueWealth positions [33m 363[2mms[22m[39m
2026-08-08T19:20:35.9717432Z [90mstderr[2m | src/pages/BudgetRecurringPage.test.ts[2m > [22m[2mBudgetRecurringPage Sprint 17D[2m > [22m[2mshows editable candidate semantics and one understandable notice card without raw confidence
2026-08-08T19:20:35.9738191Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:35.9747630Z   at <HouseholdTabs> 
2026-08-08T19:20:35.9767841Z   at <BudgetRecurringPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:35.9787482Z   at <VTUROOT>
2026-08-08T19:20:35.9787815Z 
2026-08-08T19:20:36.2199415Z [90mstderr[2m | src/pages/BudgetRecurringPage.test.ts[2m > [22m[2mBudgetRecurringPage Sprint 17D[2m > [22m[2mrecalculates edited cadence immediately and keeps preview separate from confirm
2026-08-08T19:20:36.2238055Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:36.2277506Z   at <HouseholdTabs> 
2026-08-08T19:20:36.2297633Z   at <BudgetRecurringPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:36.2337604Z   at <VTUROOT>
2026-08-08T19:20:36.2361977Z 
2026-08-08T19:20:36.2754420Z  [32m✓[39m src/pages/BudgetRecurringPage.test.ts [2m([22m[2m2 tests[22m[2m)[22m[33m 571[2mms[22m[39m
2026-08-08T19:20:36.2809125Z      [33m[2m✓[22m[39m shows editable candidate semantics and one understandable notice card without raw confidence [33m 332[2mms[22m[39m
2026-08-08T19:20:37.8683053Z  [32m✓[39m src/pages/GlobalPrimeVueMigration.test.ts [2m([22m[2m6 tests[22m[2m)[22m[33m 551[2mms[22m[39m
2026-08-08T19:20:37.8689808Z      [33m[2m✓[22m[39m provides reusable shared PrimeVue UI building blocks [33m 539[2mms[22m[39m
2026-08-08T19:20:38.9519888Z  [32m✓[39m src/pages/GroceryMatchingLearningV2.test.ts [2m([22m[2m2 tests[22m[2m)[22m[33m 520[2mms[22m[39m
2026-08-08T19:20:38.9568190Z      [33m[2m✓[22m[39m shows known mappings, cache status and review actions [33m 324[2mms[22m[39m
2026-08-08T19:20:40.2492939Z  [32m✓[39m src/stores/budgetStores.test.ts [2m([22m[2m5 tests[22m[2m)[22m[32m 23[2mms[22m[39m
2026-08-08T19:20:41.9115604Z  [32m✓[39m src/pages/CommandCenter.test.ts [2m([22m[2m4 tests[22m[2m)[22m[33m 783[2mms[22m[39m
2026-08-08T19:20:41.9138529Z      [33m[2m✓[22m[39m renders four compact areas, one household forecast hint and grouped review impact [33m 349[2mms[22m[39m
2026-08-08T19:20:43.7309331Z [90mstderr[2m | src/pages/DataExplorerPage.test.ts[2m > [22m[2mDataExplorerPage[2m > [22m[2mrenders filters, KPI cards and confirmed transaction table
2026-08-08T19:20:43.7311443Z [22m[39m[Vue warn]: injection "Symbol(router)" not found. 
2026-08-08T19:20:43.7327656Z   at <DataExplorerPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:43.7350500Z   at <VTUROOT>
2026-08-08T19:20:43.7367768Z [Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:43.7387657Z   at <DataExplorerPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:43.7407421Z   at <VTUROOT>
2026-08-08T19:20:43.7407865Z 
2026-08-08T19:20:44.6129932Z [90mstderr[2m | src/pages/BudgetCategoriesPage.test.ts[2m > [22m[2mBudgetCategoriesPage UX fix[2m > [22m[2mseparates expense and income category tables and hides archived categories from normal rows
2026-08-08T19:20:44.6148046Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:44.6157518Z   at <HouseholdTabs> 
2026-08-08T19:20:44.6158151Z   at <BudgetCategoriesPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:44.6158748Z   at <VTUROOT>
2026-08-08T19:20:44.6159353Z [Vue warn]: Failed to resolve component: RouterLink
2026-08-08T19:20:44.6160740Z If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. 
2026-08-08T19:20:44.6161818Z   at <HouseholdTabs> 
2026-08-08T19:20:44.6162378Z   at <BudgetCategoriesPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:44.6162946Z   at <VTUROOT>
2026-08-08T19:20:44.6163178Z 
2026-08-08T19:20:44.8603445Z [90mstderr[2m | src/pages/BudgetCategoriesPage.test.ts[2m > [22m[2mBudgetCategoriesPage UX fix[2m > [22m[2msaves expense and income order separately through typed reorder API
2026-08-08T19:20:44.8779558Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:44.8979125Z   at <HouseholdTabs> 
2026-08-08T19:20:44.9048092Z   at <BudgetCategoriesPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:44.9226812Z   at <VTUROOT>
2026-08-08T19:20:44.9267763Z [Vue warn]: Failed to resolve component: RouterLink
2026-08-08T19:20:44.9269199Z If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. 
2026-08-08T19:20:44.9270265Z   at <HouseholdTabs> 
2026-08-08T19:20:44.9270816Z   at <BudgetCategoriesPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:44.9271371Z   at <VTUROOT>
2026-08-08T19:20:44.9271588Z 
2026-08-08T19:20:44.9820817Z [90mstderr[2m | src/pages/BudgetCategoriesPage.test.ts[2m > [22m[2mBudgetCategoriesPage UX fix[2m > [22m[2mkeeps CRUD actions visible without technical ids and uses preview/confirm/audit APIs
2026-08-08T19:20:45.0079533Z [22m[39m[Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:45.0081107Z  [32m✓[39m src/pages/BudgetCategoriesPage.test.ts [2m([22m[2m3 tests[22m[2m)[22m[33m 648[2mms[22m[39m
2026-08-08T19:20:45.0098503Z      [33m[2m✓[22m[39m separates expense and income category tables and hides archived categories from normal rows [33m 314[2mms[22m[39m
2026-08-08T19:20:45.0419744Z   at <HouseholdTabs> 
2026-08-08T19:20:45.0427690Z   at <BudgetCategoriesPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:45.0525772Z   at <VTUROOT>
2026-08-08T19:20:45.0529270Z [Vue warn]: Failed to resolve component: RouterLink
2026-08-08T19:20:45.0530682Z If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. 
2026-08-08T19:20:45.0531715Z   at <HouseholdTabs> 
2026-08-08T19:20:45.0532254Z   at <BudgetCategoriesPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:45.0532818Z   at <VTUROOT>
2026-08-08T19:20:45.0533079Z 
2026-08-08T19:20:45.0534440Z [90mstderr[2m | src/pages/DataExplorerPage.test.ts[2m > [22m[2mDataExplorerPage[2m > [22m[2mopens a detail dialog on row click
2026-08-08T19:20:45.0535818Z [22m[39m[Vue warn]: injection "Symbol(router)" not found. 
2026-08-08T19:20:45.0536570Z   at <DataExplorerPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:45.0537521Z   at <VTUROOT>
2026-08-08T19:20:45.0538150Z [Vue warn]: injection "Symbol(route location)" not found. 
2026-08-08T19:20:45.0538890Z   at <DataExplorerPage ref="VTU_COMPONENT" > 
2026-08-08T19:20:45.0539414Z   at <VTUROOT>
2026-08-08T19:20:45.0539610Z 
2026-08-08T19:20:45.3059795Z  [32m✓[39m src/pages/DataExplorerPage.test.ts [2m([22m[2m2 tests[22m[2m)[22m[33m 2622[2mms[22m[39m
2026-08-08T19:20:45.3078699Z      [33m[2m✓[22m[39m renders filters, KPI cards and confirmed transaction table [33m 1644[2mms[22m[39m
2026-08-08T19:20:45.3153944Z      [33m[2m✓[22m[39m opens a detail dialog on row click [33m 976[2mms[22m[39m
2026-08-08T19:20:47.9869192Z  [32m✓[39m src/components/portfolio-data/PortfolioAnalyticsPanel.test.ts [2m([22m[2m4 tests[22m[2m)[22m[33m 835[2mms[22m[39m
2026-08-08T19:20:47.9908790Z      [33m[2m✓[22m[39m shows risk distribution without a second performance or benchmark source [33m 416[2mms[22m[39m
2026-08-08T19:20:48.4467544Z  [32m✓[39m src/pages/BudgetReviewBacklogPage.test.ts [2m([22m[2m1 test[22m[2m)[22m[33m 807[2mms[22m[39m
2026-08-08T19:20:48.4489915Z      [33m[2m✓[22m[39m renders backlog header, workgroups, safe confirm previews and category assignment [33m 805[2mms[22m[39m
2026-08-08T19:20:50.8611990Z  [32m✓[39m src/components/household/TransactionDetailDrawer.test.ts [2m([22m[2m1 test[22m[2m)[22m[33m 765[2mms[22m[39m
2026-08-08T19:20:50.8614429Z      [33m[2m✓[22m[39m stops after an explicit preview and does not confirm automatically [33m 763[2mms[22m[39m
2026-08-08T19:20:51.1828078Z  [32m✓[39m src/pages/GroceryPriceProvidersV1.test.ts [2m([22m[2m2 tests[22m[2m)[22m[33m 495[2mms[22m[39m
2026-08-08T19:20:51.1849735Z      [33m[2m✓[22m[39m keeps Migros Optimizer route available but not prominent in user navigation [33m 307[2mms[22m[39m
2026-08-08T19:20:53.7635588Z  [32m✓[39m src/pages/BudgetImportPage.test.ts [2m([22m[2m2 tests[22m[2m)[22m[33m 667[2mms[22m[39m
2026-08-08T19:20:53.7658741Z      [33m[2m✓[22m[39m renders upload workflow and aggregated dry-run counts without Google Drive as primary flow [33m 345[2mms[22m[39m
2026-08-08T19:20:53.7688485Z      [33m[2m✓[22m[39m shows dry-run result, enables candidate creation, and builds review link with session filters [33m 319[2mms[22m[39m
2026-08-08T19:20:53.9622455Z  [32m✓[39m src/pages/PostFinancePage.test.ts [2m([22m[2m2 tests[22m[2m)[22m[33m 512[2mms[22m[39m
2026-08-08T19:20:53.9669284Z      [33m[2m✓[22m[39m renders separated snapshot, cost basis, cash, ledger and history without technical account identifiers [33m 353[2mms[22m[39m
2026-08-08T19:20:56.4649002Z  [32m✓[39m src/pages/BudgetMonthlyImportPage.test.ts [2m([22m[2m1 test[22m[2m)[22m[33m 495[2mms[22m[39m
2026-08-08T19:20:56.4668953Z      [33m[2m✓[22m[39m renders dashboard, import history and review transition without auto booking [33m 490[2mms[22m[39m
2026-08-08T19:20:56.7584224Z  [32m✓[39m src/components/SystemControls.test.ts [2m([22m[2m3 tests[22m[2m)[22m[33m 523[2mms[22m[39m
2026-08-08T19:20:59.0625417Z  [32m✓[39m src/navigation/UserNavigationSmoke.test.ts [2m([22m[2m4 tests[22m[2m)[22m[33m 336[2mms[22m[39m
2026-08-08T19:21:00.0984224Z  [32m✓[39m src/components/ui/DataQualityBadge.test.ts [2m([22m[2m8 tests[22m[2m)[22m[33m 1154[2mms[22m[39m
2026-08-08T19:21:01.4048873Z  [32m✓[39m src/components/SidebarNav.mobile.test.ts [2m([22m[2m2 tests[22m[2m)[22m[33m 395[2mms[22m[39m
2026-08-08T19:21:02.8026249Z  [32m✓[39m src/pages/BudgetSetupPage.test.ts [2m([22m[2m1 test[22m[2m)[22m[33m 353[2mms[22m[39m
2026-08-08T19:21:02.8138779Z      [33m[2m✓[22m[39m shows seed review sections and user actions without exposing technical ids or source files [33m 350[2mms[22m[39m
2026-08-08T19:21:03.9559112Z  [32m✓[39m src/pages/BudgetCategoryAssignmentA11y.test.ts [2m([22m[2m1 test[22m[2m)[22m[32m 290[2mms[22m[39m
2026-08-08T19:21:05.4290843Z  [32m✓[39m src/pages/ReportsPage.test.ts [2m([22m[2m1 test[22m[2m)[22m[33m 372[2mms[22m[39m
2026-08-08T19:21:05.4345448Z      [33m[2m✓[22m[39m renders report type period format preview generate and existing runtime reports [33m 368[2mms[22m[39m
2026-08-08T19:21:06.6628948Z  [32m✓[39m src/components/charts/MarketChart.test.ts [2m([22m[2m2 tests[22m[2m)[22m[33m 398[2mms[22m[39m
2026-08-08T19:21:08.1379891Z  [32m✓[39m src/components/household/HouseholdNavigation.test.ts [2m([22m[2m2 tests[22m[2m)[22m[33m 366[2mms[22m[39m
2026-08-08T19:21:08.1384190Z      [33m[2m✓[22m[39m offers the simplified primary areas, canonical review badge and management destinations [33m 362[2mms[22m[39m
2026-08-08T19:21:08.9165392Z  [32m✓[39m src/composables/useQueryFilters.test.ts [2m([22m[2m2 tests[22m[2m)[22m[32m 38[2mms[22m[39m
2026-08-08T19:21:10.3512129Z  [32m✓[39m src/api/client.test.ts [2m([22m[2m2 tests[22m[2m)[22m[32m 9[2mms[22m[39m
2026-08-08T19:21:11.8669101Z  [32m✓[39m src/components/ui/AvailabilityState.test.ts [2m([22m[2m6 tests[22m[2m)[22m[33m 760[2mms[22m[39m
2026-08-08T19:21:13.2147751Z  [32m✓[39m src/components/policy/PolicyAllocationStatus.test.ts [2m([22m[2m6 tests[22m[2m)[22m[33m 679[2mms[22m[39m
2026-08-08T19:21:15.2109381Z  [32m✓[39m src/App.test.ts [2m([22m[2m1 test[22m[2m)[22m[33m 671[2mms[22m[39m
2026-08-08T19:21:15.2127975Z      [33m[2m✓[22m[39m renders the user dashboard shell [33m 668[2mms[22m[39m
2026-08-08T19:21:15.6449434Z  [32m✓[39m src/utils/formatters.test.ts [2m([22m[2m2 tests[22m[2m)[22m[32m 48[2mms[22m[39m
2026-08-08T19:21:16.6752376Z  [32m✓[39m src/utils/month.test.ts [2m([22m[2m1 test[22m[2m)[22m[32m 6[2mms[22m[39m
2026-08-08T19:21:16.6827923Z 
2026-08-08T19:21:16.6848183Z [2m Test Files [22m [1m[32m52 passed[39m[22m[90m (52)[39m
2026-08-08T19:21:16.6867828Z [2m      Tests [22m [1m[32m236 passed[39m[22m[90m (236)[39m
2026-08-08T19:21:16.6885923Z [2m   Start at [22m 19:19:36
2026-08-08T19:21:16.6895370Z [2m   Duration [22m 99.69s[2m (transform 8.00s, setup 22.69s, import 12.57s, tests 69.44s, environment 77.93s)[22m
2026-08-08T19:21:16.6908779Z 
